home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip: 2001 Haziran
/
CHIP Haziran2001.iso
/
prog
/
basic
/
09
/
DCOM95.EXE
/
1033
/
RCDATA
/
CABINET
/
relnotes.txt
< prev
next >
Wrap
Text File
|
1999-04-14
|
33KB
|
748 lines
DCOM95 1.3
Sⁿrⁿm Notlar²
Son De≡i■iklik: 14 Eylⁿl 1998
DCOM95, Microsoft« Windows« 95 iτin Distributed COM deste≡i sa≡lar.
DCOM tel ileti■im kurallar² aτ²kτa, ActiveX« denetimleri, simgeleri
gibi Component Object Model (COM) bile■enleriyle LAN, WAN ya da
Internet'teki farkl² makinelerde yerle■ik olan Java uygulama parτalar²
aras²nda, gⁿvenilir, gⁿvenli ve verimli ileti■im deste≡i sa≡lar. DCOM
ile, al²c²lara ve uygulamalara en yⁿksek alg²lama dⁿzeyi veren
yerle■imler boyunca kendi uygulamalar²n²z da≡²t²labilir.
Daha ayr²nt²l² bilgi iτin bkz.
Microsoft COM ana sayfas²nda DCOM Technical genel bak²■ konusu,
http://www.microsoft.com/com/.
▌τindekiler
===========
I. Yeni ╓zellikler
II. Hata Dⁿzeltmeleri
III. Bilinen Sorunlar
IV. Windows NT'deki DCOM Farkl²l²klar²
V. Yeniden Da≡²l²m
VI. Destek & Kaynaklar
VII. Dosya Listesi
I. Yeni ╓zellikler
------------------
DCOM95'in Daha Eski Sⁿrⁿmleriyle De≡i■tirilmesi Yasaklanm²■t²r
DCOM95'in ÷nceki yay²n²nda, DCOM95'in daha yeni bir sⁿrⁿmⁿnⁿ,
DCOM95'in daha eski bir sⁿrⁿmⁿnⁿn yerine koyabilirdiniz. Art²k
sⁿrⁿm numaralar² yⁿkleme s²ras²nda denetleniyor ve yeni bir sⁿrⁿm
yerine eski bir sⁿrⁿmⁿ yⁿklemenize olanak verilmiyor. Bu de≡i■iklik
DLL dosyalar²n²n uyumsuz sⁿrⁿmleri nedeniyle ortaya τ²kacak sorunlar²ndan
kaτ²n²lmas²n² sa≡layacakt²r.
Visual Studio 6.0 ▌zleme Deste≡i i■lemi
Visual Studio 6.0'²n deste≡inde, DCOM95 geli■tiricilere, uygulamalar²n²n
yap²s², ba■ar²m² ve davran²■²n² anlamalar²na yard²m etmek iτin izleme
bilgisi sa≡lar. Windows 95 τal²■t²ran bir bilgisayarda Visual Studio
Analyzer kullan²yorsan²z, daima DCOM95'in de bu sⁿrⁿmⁿnⁿ kullanmal²s²n²z.
Kur Taraf²ndan Olu■turulan Yeni Dizin
Kur program², sistem dizininizin alt²nda DCOM95 adl² bir dizin olu■turur.
Son kullan²c² lisans anla■mas² ve di≡er dosyalar burada saklan²r.
Ayn² zamanda, eski DCOM95 ve OLE ikililerinin yedeklendi≡i bir
DCOM95 alt dizini olan OLDOLE de Kur taraf²ndan olu■turulur.
Bu dosyalar, DCOM95'i sonradan kald²rd²≡²n²zda geri yⁿklenecektir.
COM Internet Services
COM Internet Services (CIS) istemci ve sunuculara COM kullanarak
Internet ⁿzerinde ba≡lanma olana≡² verir. CIS iτeri≡i:
* Tⁿnelli TCP, yeni bir ileti■im kural²
* OBJREF takma ad², yeni bir takma ad tⁿrⁿ
* Yeni bir CISCNFG yard²mc² uygulamas²
Windows 95'te CIS istemci deste≡i iτin hem DCOM95'i, hem de DCOMCFG'yi
yⁿklemeniz gerekecektir. Sonra, uzak i■lemlerde hangi ileti■im
kural²n²n kullan²laca≡²n² tan²mlayan kay²t tu■unu de≡i■tirmek iτin
DCOM yap²s² yard²mc² uygulamas²n² yⁿklerken yⁿklenen CISCNFG arac²n²
kullan²n. Komut Bilgi ▌stemi penceresinde ■unu girin:
ciscnfg <protocol>
<protocol> oldu≡u yerlerde:
* RPC kullanmak iτin rpc
* HTTP kullanmak iτin http
* ╓nce TCP, sonra da sunucu zaman a■²m²ndaysa HTTP denemek
iτin tcp_http
ciscnfg komutu de≡i■ken olmadan kullan²m bilgileri sa≡lar.
Tⁿnelli TCP ileti■im kurallar² kullanmak iτin SDK gⁿncelle■tirmesi gerekmez.
OBJREF takma adlar² iτin τok az gⁿncelle■tirme var.
CreateObjrefMoniker
Bir nesnenin i■aretleyicisi ⁿzerine kurulu OBJREF takma ad² olu■turur.
WINOLEAPI CreateObjrefMoniker(
LPUNKNOWN pUnk, //Nesne i■aretleyicisi
LPMONIKER *ppMk //OBJREF takma ad² i■aretleyici adresi
);
Parametreler
pUnk
Takma ad² olan bir nesnedeki IUnknown arabirim i■aretleyicisi.
ppMk
Olu■turulmu■ OBJREF takma ad²ndaki IMoniker arabirim i■aretleyicisi
adresi.
D÷nⁿ■ De≡erleri
Bu i■lev E_OUTOFMEMORY ve E_UNEXPECTED d÷nⁿ■
de≡erlerini destekler. En az a■a≡²daki kadar:
S_OK
OBJREF takma ad² ba■ar²yla olu■turuldu.
Aτ²klamalar
▌stemciler, sunucu adres bo■lu≡undaki τal²■an nesnede s²ral²
i■aretleyiciler elde etmek iτin OBJREF takma ad² kullan²r.
Sunucu OBJREF takma ad² olu■turmak iτin genellikle
CreateObjrefMoniker kullan²r. Sonra IMoniker::GetDisplayName
τa≡²r²r; sonunda da takma ad² kald²r²r. Bir OBJREF takma ad²
iτin g÷rⁿnen ad a■a≡²daki ■ekilde olmal²d²r:
OBJREF:nnnnnnnn
nnnnnnnn, iste≡e ba≡l² olarak makine konumunu, son noktay² ve τal²■an
nesnenin arabirim i■aretleyicisi kimli≡ini (IPID) iτeren
uzun bir 64 tabanl² kodlamad²r.
G÷rⁿnen ad istemciye metin ■eklinde de iletilebilir. ╓rne≡in,
g÷rⁿnen ad istemcinin yⁿkledi≡i HTML sayfas²nda yer alabilir.
▌stemci, g÷rⁿnen ada ba≡l² OBJREF takma ad² olu■turan
MkParseDisplayName'e g÷rⁿnen ad² geτirebilir. Takma ad²n
IMoniker::BindToObject y÷ntemine τa≡r² yap²ld²ktan sonra sunucuda
τal²■an ÷rnek iτin dizili i■aretleyici elde edilir. ╓rne≡in, etkin
sunucu sayfas²nda iτerilen sunucu taraf²ndaki COM bile■eni OBJREF
takma ad² olu■turabilir; kendi g÷rⁿnen ad²n² elde edebilir ve
istemci g÷rⁿntⁿleyicisine g÷nderilen HTML sayfas²na g÷rⁿnen ad²n²
yazabilir. ▌stemci taraf²nda τal²■an simge, τal²■an nesnenin kendisine
eri■im alabilmek iτin g÷rⁿnen ad² kullanabilir. ▌stemci taraf²ndaki Visual
Basic simgesi, g÷rⁿnen ad² strMyName adl² de≡i■kende saklayabilir.
Bu de≡i■ken a■a≡²daki sat²rda yer al²r:
objMyInstance = GetObject(strMyName)
Simge tekni≡i MkParseDisplayName ve IMoniker::BindToObject iτin iτ τa≡r²
yapt²r²r. Daha sonra, τal²■an nesneye do≡rudan ba■vurmak iτin,
simge objMyInstance'² kullanabilir.
╟al²■an nesne sabit IPID'ler kullan²yorsa ve sunucu i■lemi bilinen
son noktadaki, hep ayn² bilgisayarda τal²■²yorsa OBJREF takma ad²n²n
g÷rⁿnen ad² hep ayn² olacakt²r. Bu durumda sunucu, nesne iτin istek
ald²≡²nda her seferinde tekrar hesaplamak yerine g÷rⁿnen ad² saklayacakt²r.
IMoniker - OBJREF Takma Ad² Gerτekle■tirme
OBJREF takma adlar² i■lem d²■²nda i■leyen yerel ya da uzak nesne
÷rne≡ine ba■vuru g÷sterir. Takma ad ÷rnek nesneyi ve nesnenin
τal²■t²≡² bilgisayar² tan²mlar.
OBJREF takma ad², τal²■an nesne i■lem d²■² olmad²kτa, τo≡unlukla
i■aretleyici takma adla ayn²d²r. ▌stemci OBJREF takma ad²ndaki
IMoniker::BindToObject'i τa≡²rabilir ve yerle■imini g÷zard² ederek
τal²■an nesneye eri■imi varsa i■aretleyiciyi kullanabilir.
▌■aretleyici takma addan ÷nemli fark², OBJREF takma ad²n²n HTML
sayfas²na kat²labilmesidir. ╟al²■an nesne de bir istemci simgesi,
uygulama parτas² ya da ActiveX denetimine ba≡l² olabilecek takma adla
g÷sterilebilir.
Kullan²rken
OBJREF takma ad²n²n temel kullan²m², Internet ⁿzerindeki τal²■an
nesne ÷rne≡ine eri■im elde etmektir. Etkin sunucu sayfas² ya da
devingen HTML olu■turan herhangi bir araτ, uygulama parτas² ya da
ActiveX denetim parametresinde OBJREF takma ad²n²n g÷rⁿnen ad alan²n²
iτerir. Uygulama parτas² ya da denetim kodu, g÷rⁿnen ad temelinde OBJREF
takma ad² olu■turmak iτin CreateObjrefMoniker τa≡²r²r. Sonra τal²■an
nesne ÷rne≡i eri■imi almak iτin sonuτlanan OBJREF takma ad² ⁿzerinden
IMoniker::BindToObject τa≡²r²r. Etkin sayfadan sonra τal²■an nesnenin
i■aretleyici dizileri istemci sayfas²na geri d÷ner.
Aτ²klamalar
IMoniker::BindToObject. OBJREF takma adlar² iτin pmkToLeft
parametreleri NULL olmal²d²r. OBJREF takma ad² τal²■an nesneyi
g÷sterdi≡i iτin etkinlik yoktur. G÷sterilen nesne τal²■m²yorsa
BindToObject, E_UNEXPECTED ile ba■ar²s²z olacakt²r.
IMoniker::BindToStorage. Bu y÷ntem, τal²■an nesneyi iτeren
bellekteki istenen arabirimden dizili i■aretleyici al²r. OBJREF
takma ad² τal²■an nesneyi g÷sterdi≡i iτin etkinlik yoktur.
G÷sterilen nesne τal²■m²yorsa BindToObject, E_UNEXPECTED ile
ba■ar²s²z olacakt²r.
IMoniker::Reduce. Bu y÷ntem MK_S_REDUCED_TO_SELF'e
d÷ner ve ayn² takma ada geri d÷ner.
IMoniker::ComposeWith. pmkRight takma ad kar■²t²ysa d÷nen
takma ad NULL olacakt²r. pmkRight en soldaki bile■eni takma
ad kar■²t² olan bir bile■keyse, d÷nen takma ad, en soldaki
takma ad kar■²t² kald²r²lm²■ bile■en olacakt²r. pmkRight ne
takma ad kar■²t², ne de en soldaki bile■eni takma ad kar■²t²
olan bir bile■keyse y÷ntem fOnlyIfNotGeneric parametresini
denetleyecektir. FALSE ise, y÷ntem iki takma ad² genel bir
bile■kede birle■tirir. TRUE ise, y÷ntem, Null'a *ppmkComposite
yerle■tirir ve MK_E_NEEDGENERIC' e geri d÷ner.
IMoniker::Enum. Bu y÷ntem S_OK'e d÷ner ve NULL'a
ppenumMoniker yerle■tirir.
IMoniker::IsEqual. Bu y÷ntem, *pmkOther OBJREF takma ad²ysa ve
her iki takma ad da ÷zde■se (duyars²z kar■²la■t²rma kullanarak)
S_OK'e d÷ner. Ba■ka ko■ullarda y÷ntem S_FALSE'a d÷ner.
IMoniker::Hash. Bu y÷ntem takma adlar²n karma de≡erini hesaplar.
IMoniker::IsRunning. OBJREF takma adlar² τal²■an nesne ÷rne≡i g÷sterdi≡i
iτin, son τa≡r²n²n ba■ar²s²zl²≡² nedeniyle nesnesinin τal²■mad²≡²
biliniyorsa bu y÷ntem TRUE'ya d÷ner. Y÷ntem pmkToLeft'i g÷zard² eder.
IMoniker::GetTimeOfLastChange. Bu y÷ntem
E_NOTIMPL'e d÷ner.
IMoniker::Inverse. Bu y÷ntem takma ad kar■²t²na d÷ner (÷rne≡in,
CreateAntiMoniker τa≡r²s² sonuτlar²).
IMoniker::CommonPrefixWith. ▌ki takma ad e■it oldu≡unda, bu y÷ntem
MK_S_US'a d÷ner ve NULL'a *ppmkPrefix yerle■tirir. Di≡er takma ad
OBJREF takma ad² de≡ilse, y÷ntem her iki takma ad² da
MonikerCommonPrefixWith i■levine geτirir. Bu i■lev, di≡er takma
ad²n bir soysal bile■ik oldu≡u yerde i■lemi dⁿzgⁿn i■ler.
Yayg²n bir ÷nek yoksa bu y÷ntem MK_E_'e d÷ner.
IMoniker::RelativePathTo. Bu y÷ntem E_NOTIMPL'e d÷ner.
IMoniker::GetDisplayName. Bu y÷ntem OBJREF takma ad² iτin g÷rⁿnen
ad elde eder. Bu g÷rⁿnen ad makine yerini, son nokta i■leyi■ini ve
τal²■an nesnenin arabirim i■aretleyici kimli≡ini (IPID) kapsⁿlleyen
64 bitlik kodlamad²r. Gelecekteki uyumluluk iτin, URL b÷lⁿmⁿ gibi
belirlenme olas²l²≡²na kar■², karakterler s²n²rland²r²lm²■t²r.
IMoniker::ParseDisplayName. pmkToLeft NULL de≡ilse, Bu y÷ntem
MK_E_SYNTAX'a d÷ner.
IMoniker::IsSystemMoniker. Bu y÷ntem S_OK'e d÷ner ve
MKSYS_OBJREFMONIKER'a geri d÷ner.
VB6.0 Veri Tⁿrleri Deste≡i
Visual Basic« 6.0 kullan²c² tan²ml² veri yap²lar²n² kapsamak
iτin Visual Basic de≡i■kenlerini benimser. DCOM95 art²k bu
de≡i■kenleri uzaktan da desteklemektedir.
II. Hata Dⁿzeltmeleri
----------------------
Birden ╟ok Modⁿlⁿ Kald²r²rken ╟al²■ma Ko■ullar²
Birden τok modⁿl e■zamanl² kald²r²ld²≡²nda DCOM95'in eski
sⁿrⁿmlerinde bir τal²■ma ko■ulu olu■abiliyordu. Modⁿllerin
kald²r²ld²≡² komuta ba≡l² olarak bir eri■im bozuklu≡uyla sonuτlanabiliyordu.
DCOM95'in elinizdeki sⁿrⁿmⁿnde bu dⁿzeltildi.
RPC ▌leti■im Kurallar² Anla■mas² Sⁿresince Masaⁿstⁿ Tepkisizli≡i
DCOM95'in eski sⁿrⁿmleri RPC ileti■im kurallar² anla■mas² sⁿresince
iletileri da≡²tm²yordu. Baz² durumlarda, RPC ileti■im kurallar² anla■ma
a■amas² d÷nemindeyken kullan²c² ba■ka bir uygulama ba■latt²ysa makine
tepkisiz kalabiliyordu. 30 saniye sonra ileti i■lemi sonuτlan²yordu. Bu
davran²■ DCOM95'in son sⁿrⁿmⁿnde de≡i■tirilerek uygulaman²n, RPC ileti■im
kurallar² anla■ma a■amas² d÷neminde ba■lat²lmas² sa≡land².
Yeni Uygulama Ba■lat²l²rken Masaⁿstⁿ Tepkisizli≡i
RPC, her bir DCOM belirtimi iτin iletileri da≡²tmak ⁿzere gerekmeyen
Birden ╟ok Kullan²m Odas²'nda (MTA) gizli bir pencere olu■turur.
Kullan²c² masaⁿstⁿnden bir uygulama ba■latt²≡²nda, Windows tan²ml²
tⁿm di≡er pencerelere, bu i■lemi haber vererek ve yan²t bekleyerek
bir ileti g÷nderir. DCOM95'in eski sⁿrⁿmlerinde gizli RPC penceresi
yan²tlamayabiliyordu ve Windows engelleniyordu. DCOM95'in elinizdeki
sⁿrⁿmⁿ bu sorun ⁿzerinde yo≡unla■t² ve yeni bir uygulama ba■lat²ld²≡²nda
art²k RPC penceresi masaⁿstⁿnⁿ tepkisiz b²rakm²yor.
Birden ╟ok IP Y²≡²lma Bozuklu≡unu Adresliyor
Baz² ko■ullarda, IP adresi birden fazla olan bir makinede DCOM95'in
÷nceki sⁿrⁿmlerinden birini τal²■t²r²yorsan²z IP adresi arabelle≡i
a■²labilir ve y²≡²lma bozulabilir. DCOM95'in son sⁿrⁿmⁿnde bu sorun
ⁿzerinde yo≡unla■²ld².
Yaln²zca ▌lk IP Adresi Kullan²ld²
▌ki a≡ ba≡da■t²r²c² kart² olan (b÷ylece, her biri farkl² adres
kart²na atanm²■ iki IP adresi olacakt²r) bir makinede DCOM95'in
÷nceki sⁿrⁿmlerinden birini kulland²ysan²z, DCOM95 yaln²zca bir a≡
ba≡da■t²r²c²s²n² kullanabilirdi. DCOM95'in elinizdeki sⁿrⁿmⁿnde biri
τal²■m²yorsa di≡eri kullan²lacakt²r.
RPC Art²k Birden ╟ok IP Adresini Deniyor
Birden τok adresi olan bir makineye uzaktan τa≡r² i■lemi yap²ld²≡²nda,
Ba≡lant² yap²lan ilk IP adresi ba■ar²s²z olsa bile, birbirini izleyen
IP adresleri art²k denenebiliyor.
Dosya Takma Adlar² Ek S÷zdizimi Yollar²n² Destekliyor
Dosya takma adlar² art²k, "C:\bug\bug\..\..\foo.jpg." gibi
<startdir><relativepath> biτiminde ba≡²ms²z de≡i■kenler olmadan da
olu■turulabiliyor. DCOM95 1.1'de yaln²zca g÷reli yollar
(÷rne≡in, "..\..\foo.jpg") ya da mutlak yollar (÷rne≡in, "C:\foo.jpg")
izinliydi.
Oleaut32.dll Kald²r²ld²≡²nda Genel Koruma Hatas²
DCOM95'in ÷nceki sⁿrⁿmlerinde, CoUninitialize τa≡²r²lmadan
÷nce Oleaut32.dll kald²r²ld²≡²nda genel bir koruma hatas² olu■uyordu.
Bu da τo≡unlukla, VB uygulamas² dura≡an olarak Oleaut32.dll'e ba≡l² olan
bir denetim olu■turdu≡unda gerτekle■iyordu ve CoUninitialize τa≡²rmak
iτin denetim ÷nceli≡ini serbest b²rak²l²yordu. DCOM95'in son sⁿrⁿmⁿnde
bu, genel koruma hatas²na neden olmuyor.
Visual Basic Tⁿrⁿnde Dizilme ve Dizilmeme
Baz² Visual Basic veri tⁿrlerinin dizilmesi ve dizilmemesi dⁿzeltildi.
64K'dan bⁿyⁿk dizi parametreleri art²k geτerli. Art²k, dⁿzgⁿn dizilme
ve dizilmeme tⁿrⁿnⁿn di≡er adlar² kullan²larak yap²lar tan²mlanm²■t²r.
OleUninitialize S²ras²nda Bir ╟ok Kez Silinen Tek Veriler
Bu hata, OleInitialize ve OleUninitialize birden τok kez τa≡²ran
uygulamalarda g÷rⁿlⁿyordu. ▌lk kullan²ma haz²rlama s²ras²nda OLE, DDE RPC'ye
birτok tek veri ekler. Tek veriler ba■ka bir kullan²m taraf²ndan
eklenmi■se, yeniden eklenmez. Ba■lang²τ durumuna getirmeme s²ras²ndaysa
tek veriler daima silinse de tan²t²c²lar bo■alt²lam²yordu. Bu nedenle,
OleInitialize bir sonraki τa≡²r²l²■²nda tek veriler siliniyor fakat
eski tan²t²c²lar hala varl²klar²n² sⁿrdⁿrⁿyordu. Hatta, tek veriler
silindi≡inden, bunlara OLE eklenemiyordu. Bu da, birden τok kez OleInitialize
ve OleUninitialize τa≡²r²l²■²ndan sonra OLE tek verilerinin geτersiz
olmas²na neden oluyordu. DCOM95'in elinizdeki sⁿrⁿmⁿnde bu sorun ⁿzerinde
yo≡unla■²ld².
ADO Sunucular²n²n Dⁿzgⁿn Kapanmas²
Etkin Veri Nesneleri (ADOs) sunucu i■lemini ba■latmak iτin i■aretleyici
takma ad² kullan²r. DCOM95'in ÷nceki sⁿrⁿmleri, i■aretleyici takma ad²nda
ba■vuru say²s² kullan²rken bir hata iτeriyor. ▌■aretleyici takma adlar²
olu■turan ba■lang²τ ba■vuru say²lar² 0 ile de≡il 1 ile ba■l²yordu. B÷ylece,
i■aretleyici takma adlar²n ba■vuru say²s²nda s²f²r hiτ olmuyor ve
i■aretleyici takma ad² hiτ serbest kalm²yordu. Sonuτ olarak, ADO
sunucular², bunlar²n son i■aretleyicisi i■ledi≡inde bile kapanam²yordu.
DCOM95'in elinizdeki sⁿrⁿmⁿnde bunun ⁿzerinde yo≡unla■²ld².
CoCreateInstance Kendi DNS ad²yla ╟al²■²yor
DCOM95'in ÷nceki sⁿrⁿmlerinde, yerel makinenin nitelenmi■ ad²yla
CoCreateInstance τa≡²rma τal²■m²yordu. DCOM95'in elinizdeki sⁿrⁿmⁿnde
bunun ⁿzerinde yo≡unla■²ld² ve art²k CoCreateInstance yerel makinede dⁿzgⁿn
olu■turuluyor ve ÷rnekleniyor.
╟ok Bⁿyⁿk Bile■ik Dosyal² K÷k Depolamada Yava■ ▄stlenme
DCOM95'in eski sⁿrⁿmlerinde, STGM_TRANSACTED kipinde aτ²lan
k÷k depolamadaki ⁿstlenme sⁿresi, bile■ik dosya bⁿyⁿk oldu≡unda
(÷rne≡in, 400M) τok yava■lard². ▌τ sayfa tablo s²n²rlar² yⁿkseltilerek
bu sorun a■²ld².
Yeniden Olu■turulan MTA'dan Nesne Aktarma
DCOM95'in ÷nceki sⁿrⁿmlerinde sunucu, ▌■lemde Birden ╟ok Kullan²m
Odas² (MTA) ilk kez olu■turulmuyorsa, MTA'den nesne aktaram²yordu. Bu
dⁿzeltildi. Art²k sunucu MTA olu■turuyor, y²k²yor ve s²ral² olarak yeniden
MTA olu■turuyorsa MTA'den nesne aktar²labilecek.
Visual Basic 4 EXE'lerin Birden ╟ok ╓rne≡i
DCOM95 v1.1'de, ayn² Visual Basic 4 τal²■ma dosyalar²n²n birden τok kopyas²n²
ba■lat²r ve sonra bunlar² LIFO (Last-In First-Out/Son Giren ▌lk ╟²kar)
s²ras²yla de≡il herhangi bir s²rayla kapat²rsan²z, son exe as²l² kal²yordu.
Bu ayn² zamanda Microsoft Exchange'de E-Form'lar²n do≡rusuydu. DCOM95'in
son sⁿrⁿmⁿnde bunun ⁿzerinde yo≡unla■²ld². Art²k Visual Basic 4 exe'lerini
her ■ekilde kapatabilirsiniz.
Visual Basic Dosya Adlar²nda Geni■letilmi■ Karakterler
Belli bir dil iτin geni■letilmi■ karakterler kullanarak Visual Basic
modⁿl ya da s²n²f²n² adland²rd²ysan²z, bu dosya, farkl² bir yerde
biτimlendirilmi■ makinede aτ²lmayabilir. Bunun ⁿzerinde yo≡unla■²ld².
III. Bilinen Sorunlar
---------------------
Corel WordPerfect Suite 7: Yⁿkleme Geτersiz Sayfa Hatas²na Neden Oluyor
DCOM95 τal²■t²ran Windows 95 sisteminde Corel WordPerfect Suite 7
kurdu≡unuzda, kurma sⁿresince PfOd70.pfc'de geτersiz bir sayfa elde
edebilirsiniz. Bu hata ortaya τ²kt²≡²nda hemen ileti■im kutusundaki
hata iletisini kapay²n. Kurma ba■ar²yla devam edecektir.
Microsoft Access95: Veritaban² Kopyalamas² ╟al²■m²yor
DCOM95 kurulu bir makinede Microsoft Access 95 kullanarak
veritaban² Access'i kopyalamay² denerseniz a■a≡²daki hata
iletisini alacaks²n²z:
Microsoft Access bu i■lemi sonuτland²ram²yor τⁿnkⁿ Msjtrclr devingen
ba≡l² kⁿtⁿphanesini bulam²yor ya da ba■latam²yor.
Bu, Microsoft Access 95'te bir sorundur. Bu sorunu, kopyalama arac²ndan
τok Access nesne modelini kullanan bir program yazarak ya da kopyalaman²n
evrak τantas²n² kullanarak a■abilirsiniz. Microsoft Access 97 bu sorundan
etkilenmemektedir.
WordPerfect
Kat²■t²r²lm²■ Corel elektronik tablosu iτeren bir WordPerfects belgeniz
varsa ve bu elektronik tablo ba■ka bir kat²■t²r²lm²■ nesne (÷rne≡in,
bit e■lem belgesi) iτeriyorsa, en iτteki nesneleri kapat²rken a≡ ba≡lant²n²z²
kaybedebilece≡inizi bildiren bir uyar² iletisi alabilirsiniz. Buna benzer
d÷rt ya da be■ uyar² vard²r. Bu uyar²lar²n tⁿmⁿ k÷tⁿ sonuτ vermeyenlerdendir.
Hemen kapat²n ve devam edin.
DDE iletilerini Engelleyebilecek D÷nⁿ■ⁿm Yordamlar² Kullanan
Birden ╟ok Kullan²m Odas² (MTA) ▌stemcileri
BSTR d÷nⁿ■ⁿm yordamlar²n² (÷rne≡in, BstrFromR4) otomatikle■tirme yordam²
olanakl² k²lmak iτin gizli pencere olu■turur. Bu pencereler Windows
ileti kuyru≡una hizmet etmez. Bir MTA istemcisinden kaynaklanan b÷yle
bir pencere olu■tu≡unda, DDE iletileri engellenebilir. ▌stemci kullan²m²,
MTA programl² model alt²nda ileti kuyru≡una hizmet etmek zorunda de≡ildir.
B÷yle yapmazsa, bu ⁿst dⁿzey pencere, genel yay²n
iletilerinin durdurulmas²na neden olur.
Bu durumda τal²■mak iτin iki yol vard²r. Ya tek kullan²m odal² (STA)
istemciden kaynaklanan BSTR d÷nⁿ■ⁿm yordamlar²n² τa≡²rmak, ya da
istemcinin MTA kullan²m²n² bir STA kullan²m² gibi davrand²rmak.
(STA kullan²m² ileti kuyru≡una hizmet etmek zorundad²r.) Kullan²m
win32 tan²t²c²s²nda engelleniyorsa, Windows iletilerini e■zamanl² da≡²tmak
iτin MsgWaitForMultipleObjects i■levini τa≡²rmak gerekir.
DLL yol adlar² 127 karakterden τoksa hataya neden oluyor
DLL'i 128 ya da daha fazla karakterle kaydederseniz, kay²t
i■lemi ba■ar²l² olur ama DLL'in destekledi≡i bir nesneye
eri■ilirken CoCreateInstance ya da CoGetClassObject
hataya d÷ner (REGDB_E_CLASSNOTREG).
IV. Windows NT'deki DCOM Farkl²l²klar²
--------------------------------------
DCOM95'in Gⁿvenlik Yetenekleri
DCOM95'in τekirdek i■levi ve arabirim programlama uygulamas² (API)
hem Windows 95'te, hem de Windows NT 4.0/5.0'da ÷zde■tir. Buna kar■²n,
i■letilen sistemlerin gⁿvenlik alt yap² farkl²l²klar² nedeniyle
gⁿvenli≡e ba≡l² baz² ÷zellikler de farkl²d²r. Sistemin varsay²lan
gⁿvenlik yerle■imlerini kullanman²z ÷nerilir. Dosya sistemi payla■²m²nda
"kullan²c² dⁿzeyi" gⁿvenlik yetkisi de gereklidir. (A■a≡²ya bkz.)
Varsay²lan gⁿvenli≡i a■mak iτin kullan²labilecek hizmetler:
* CoInitializeSecurity
* CoQueryAuthenticationService
* CoQueryProxyBlanket
* CoSetProxyBlanket
* CoQueryClientBlanket
* IClientSecurity Interface
* IServerSecurity Interface
Windows NT'deki DCOM'un parτas² olan baz² ÷zellikler Windows 95'in
gⁿvenlik alt yap²s²ndaki farkl²l²klar nedeniyle Windows 95'te olmayacakt²r.
╓zel durumda, denetim listeleri eri■imi (ACLs) olu■turma ÷zelli≡i gibi
Win32 API'deki gⁿvenlik eksikli≡i i■levleri ve simge i■lemi ve kullan²m²
birlikte τal²■t²ran gⁿvenlik ba≡lam² eksikli≡i kadar AccessCheck i■levi
de hesaba kat²lmal²d²r. Windows 95 bu i■lev ve yap²lar² ÷zgⁿn olarak
desteklemez. Bu nedenle, DCOM95, Windows NT 4.0'daki kullan²m ve simge
i■lemi ⁿzerinde kurulu olan kimlik belirlemeyi (÷zellikle, IServerSecurity
arabirimi ⁿzerindeki CoImpersonateClient ve CoRevertToSelf yard²m i■levlerini)
desteklemez. Kimlik belirleme, dosya sistemi, di≡er i■leyi■ler ve a≡ gibi
s²n²rl² sistem kaynaklar²na eri■im denetimini yayg²n olarak kullan²r.
Bu kaynaklar, Windows 95'te s²n²rl² de≡ildir.
DCOM95, programc²lara eri■im denetimli i■lev ve ACL sa≡lamak iτin τe■itli
yard²m nesneleri sunar. Eri■im denetimli i■lev, kullan²c² tan²ml² kaynaklar
ya da veriler ve her iki sisteme de, uzak istemcilerle belirgin eri■im denetimi
sa≡layabilir. Bu yard²m nesneleri IAccessControl arabirimine yerle■tirilmi■
CLSID_DCOMAccessControl sistem nesnesinden elde edilir.
Windows 95/98 ve Windows NT aras²ndaki ta■²nabilirli≡in ili■kili oldu≡u
her yerde IAccessControl programl² olarak gⁿvenlik iznini y÷netmelidir.
CLSID_DCOMAccessControl nesnesi, tⁿm DCOM95 sⁿrⁿmlerinde ve Windows NT 4.0
SP2'de ve sonrakilerde vard²r. IAccessControl ile ilgili ayr²nt²l² bilgi iτin
bkz., SDK Platformu belgelendirmesi.
Gⁿvenlik Ba■latma ve Eri■imi
DCOM95'te, ba■latma sunucular² desteklenmedi≡inden, sunucu s²n²f²
kodunu ba■latan² denetleme de desteklenmez. Sunucular/s²n²flar uzak
istemcileri kendilerine ba≡lamak ve hizmet vermek iτin zaten τal²■mak
zorundad²r.
DCOM95, ba≡lanmak iτin zaten τal²■makta olan s²n²flar/sunucular² destekler.
Eri■im gⁿvenli≡i \APPID\{.}\AccessPermissions kay²t dⁿ≡mesi ⁿzerinden
desteklenir ve DCOMCNFG arac² ⁿzerinden ya da kurma ya da sunucu kodu kurma
s²ras²nda ayarlan²r. Kimlik denetimi olmayan kullan²c²lar, kimlik denetimi
olmayan ba≡lant²lar² (sabit yap²land²r²lm²■ araτlar ya da devingen olarak
CoInitializeSecurity i■levi ⁿzerinden) desteklemek iτin s²n²f² yap²land²rd²ysan²z
sunucuyu kullanabileceklerdir. Ayn² zamanda belirli hizmetlere hangi kullan²c²
ya da grubun eri■ti≡ini tan²mlamak iτin iste≡e ba≡l² ACS'ler olu■turabilirsiniz.
Kimlik Dⁿzeyleri
DCOM95 istemcileri herhangi bir kimlik dⁿzeyi kullanmadan DCOM
τa≡²rabilir. DCOM95 sunucu veya istemcileri geri τa≡r²lar² al²rken,
yaln²zca RPC_C_AUTHN_LEVEL_NONE veya RPC_C_AUTHN_LEVEL_CONNECT kimlik
dⁿzeylerini kullanan DCOM τa≡r²lar²n² kabul edebilir.
Ta■²malar
DCOM95 yaln²zca TCP ba≡lant²s²n² destekler. TCP/IP ileti■im kural²
sizde kurulu de≡ilse DCOM95 makineler aras² COM'u destekleyemeyecektir.
Kay²t Ayarlar²
A■a≡²daki kay²t dⁿ≡meleri DCOM95'in ba■latt²≡²
HKEY_LOCAL_MACHINE\Software\Microsoft\OLE alt²nda yer al²r:
EnableDCOM (varsay²lan de≡er = "Y"). DCOM'un makinede τal²■mas²n²
sa≡lar. "N" ayar² oldu≡unda, makine, uzak makinelere ba≡lant²dan veya
bunlardaki etkin nesnelerden korunur ve uzak makineler yerel makinedeki
nesnelerle ba≡lant² kuramaz. Bu de≡er "Y" olarak ayarland²≡²nda hem
istemci olarak uzak nesneyle ba≡lant² kurabilir (a■a≡²da anlat²ld²≡²
gibi, EnableRemoteConnect='N' oldu≡unda), hem de tam bir istemci/sunucu
ba≡lant²s² yapabilirsiniz (a■a≡²da anlat²ld²≡² gibi,
EnableRemoteConnect='Y' oldu≡unda).
EnableRemoteConnect (varsay²lan de≡er = "N"). Uzak istemcilere COM
sunucular² sa≡lar. Bu de≡er "Y" oldu≡unda yerel nesnelerdeki arabirim
ba■vurular² uzak istemcilere geτecek ve uzak istemciler de τal²■an nesneye
ba≡lant² sa≡layacakt²r. Bu de≡er "N" oldu≡undaysa makine uzak nesnelere
ba≡lanabilecek ama sunucu gibi davranamayacakt²r: Makine τal²■an nesnelerin
ba≡lant²s²ndan korunuyor.
Ek olarak, a■a≡²daki kay²t dⁿ≡mesi
HKEY_CLASSES_ROOT\CLSID alt²ndad²r:
{bdc67890-4fc0-11d0-a805-00aa006d2ea4}\InstalledVersion.
"a,b,c,d" biτiminde DCOM95'in sⁿrⁿm numaralar²n² iτeriyor. Bu de≡er,
DCOM95 yⁿklenip yⁿklenmedi≡ini belirlemek iτin Internet Bile■eni
Yⁿkleme taraf²ndan kullan²labilir.
Windows 95'i uzak ana sunucu olarak kullanma
A■a≡²daki uyar²lar g÷zard² edilmeden Windows 95 uzak ana sunucu olabilir:
* Ba■latma yetene≡i yoktur. ▌stemciye ba≡lanmak iτin sunucu
i■lemlerinin τal²■²yor olmas² gerekir.
* Gⁿvenlik ba≡lant²lar² gerekiyorsa, sunucunun (geri τa≡r² ve
istemci ko■ullar²nda), gⁿvenlik sa≡lay²c²s² ayar² ad²yla
kullan²c² dⁿzeyi eri■im denetimi olmas² gerekir.
* "EnableRemoteConnect" kay²t de≡eri "Y" olarak ayarlanmal²d²r.
Windows NT Etki Alan² gⁿvenlik sa≡lay²c²s² kullan²larak DCOM95
yayg²n olarak s²nanm²■t²r. Ba■ka gⁿvenlik sa≡lay²c²lar² kullan²rken
sorunlarla kar■²la■abilirsiniz.
Kullan²c² dⁿzeyi eri■im denetimi ba■latmak iτin Filesec.vxd kurulu
olmal²d²r. Bu dosya Windows 95'e genellikle dosya kurulurken veya
payla■²m yazd²r²l²rken kurulur.
Kullan²c² dⁿzeyi eri■im denetimi yapabilmek iτin, A≡ ileti■im kutusundan
Denetim Masas²'n² aτ²n, Eri■im Denetimi sekmesini t²klay²n ve gⁿvenlik
etki alan² ad²n²z² girin. Bu, bilgisayar²n²zdan a≡da payla■t²≡²n²z
dizinlerin yolunu etkileyecektir. Ayr²nt²lar iτin τevrimiτi belgelendirmelere
bak²n. A≡ yap²n²z²n denetim masas²nda Eri■im Denetimi yoksa bir a≡ istemci
hizmeti kurman²z gerekecektir. A≡ istemcisi yⁿkleme bilgileri iτin yard²m
dizinine giri■ ayar² yaparken A≡ istemcilerini t²klat²n.
V. Yeniden Da≡²l²m
------------------
DCOM95'in yeniden da≡²l²m² bilgileri iτin son kullan²c² lisans
anla■mas²ndaki (license.txt) yeniden da≡²l²m y÷nergelerini inceleyin.
VI. Destek & Kaynaklar
----------------------
Microsoft Teknik Destek Hizmetleri
En son gⁿncelle■tirme ve teknik bilgileri, ⁿrⁿn CD ya da disketlerindeki
benioku dosyas²nda bulabilirsiniz.
E≡er bu dosyada arad²≡²n²z sorunun yan²t²n² bulamazsan²z, Microsoft Masaⁿstⁿ
Uygulamalar² ve Ki■isel ▌■letim Sistemlerinin deste≡ini Microsoft Destek
Hatt² (212 258 96 66) arac²l²≡² ile alabilirsiniz. Kay²t kart²n²z ile
Microsoft'a g÷nderece≡iniz bilgiler kay²tl² kullan²c² veri taban²m²za eklenecek
ve Microsoft Destek Hatt²ndan ⁿcretsiz olarak yararlanabileceksiniz.
Not: Microsoft Tⁿrkiye Destek Hizmetleri, ⁿcretsiz ya da dⁿ■ⁿk maliyetli
elektronik bilgi hizmetlerinden (haftan²n 7 gⁿnⁿ 24 saat kullan²mda) y²ll²k
destek planlar² ve CD-ROM abone programlar²na kadar τe■itli seτenekler sunar.
Ayr²nt²l² bilgi iτin Yard²m iτinde Teknik Destek k²sm²na bak²n²z. Microsoft
destek hizmetleri o andaki geτerli fiyatlar, ko■ullar ve s÷zle■melere ba≡l²d²r
ve duyurulmaks²z²n de≡i■tirilebilir.
Destek Hizmetleri seτenekleri:
Microsoft Teknik Destek û Internet Sayfalar²
Microsoft Support Online ( ▌ngilizce) internet sayfalar²na
http://support.microsoft.com/support/ adresinden ula■abilirsiniz.
Microsoft Support Online arad²≡²n²z cevaplar² bulman²z² kolayla■t²r²yor: ▄rⁿn
ad²n² seτin ve sorunuzu yaz²n. Bu sayfalarda kullan²lan dil ▌ngilizce oldu≡u
iτin sorular²n²z² ▌ngilizce olarak yazman²z gerekir. Find simgesini t²klatt²≡²n²zda
Support Online, en son Microsoft teknolojilerini kullanarak Microsoft Teknik
Destek bilgi veri taban²n² ara■t²r²r ve arad²≡²n²z cevaplara ula■man²z² sa≡lar.
Teknik bir sorunuz oldu≡unda Support Online Internet sayfalar²na
http://support.microsoft.com/support adresinden bir g÷z at²n ve arad²≡²n²z
yan²tlar² bulman²n ne kadar kolay oldu≡unu ke■fedin.
Internet ⁿzerindeki Destek hizmetleri iτin http://www.microsoft.com/support/
ve Tⁿrkτe sayfalar iτin http://www.microsoft.com/turkey/destek/ adresine gidin.
Di≡er Destek Hizmetleri
InternetÆte bulunan kaynaklara ek olarak Microsoft Teknik Destek a■a≡²da
listelenen di≡er teknik bilgi kaynaklar²n² sa≡lar.
Microsoft TechNet: ▌■ yerinizdeki a≡ y÷netiminden sorumlu ya da kullan²c²lara
destek vermekle g÷revli bir bili■im teknolojisi veya Destek masas² τal²■an²ysan²z,
TechNet ile ■irket gereksinimlerinize h²zl² τ÷zⁿmler ⁿretebilirsiniz. TechNet,
Microsoft ⁿrⁿnlerini inceleme, kullanma ve destek alan²nda kullanabilece≡iniz
geni■ kapsaml² bir kaynakt²r. Daha fazla bilgi ve Microsoft TechNet CDÆlerine
ⁿye olmak iτin http://www.microsoft.com/turkey/ sayfalar²na bak²n²z veya
Microsoft Tⁿrkiye ofisini aray²n²z.
Microsoft Developer Network Library (MSDN): Internet veya Microsoft Windows
i■letim sistemleri iτin uygulama geli■tiriyorsan²z ya da Microsoft ⁿrⁿnlerini
ⁿrⁿn geli■tirme amaτl² olarak kullan²yorsan²z, MSDN CDÆlerine ⁿye olarak
ⁿretkenli≡inizi art²rabilirsiniz. MSDN; SDK, DDK, Windows, BackOffice,
Microsoft Office Visual Tools ile uygulama geli■tirenler iτin teknik
programlama bilgisi sa≡layan MicrosoftÆun resmi kayna≡²d²r. Daha fazla
bilgi ve MSDN CDÆlerine ⁿye olmak iτin http://www.microsoft.com/turkey/
sayfalar²na bak²n²z veya Microsoft Tⁿrkiye ofisini aray²n²z.
Microsoft Download Service (MSDL): MSDL ⁿzerindeki τe■itli teknik bilgilere,
÷rnek programlara, ayg²t sⁿrⁿcⁿlerine, yaz²l²m gⁿncelle■tirme ve eklerine,
programlama yard²mlar²na do≡rudan modem ba≡lant²s²yla eri■im sa≡lar. Daha
fazla bilgi iτin http://www.microsoft.com/turkey/ sayfalar²na bak²n²z veya
Microsoft Tⁿrkiye ofisini aray²n²z.
Microsoft Teknik Destek mⁿhendislerinden do≡rudan yard²m
Standart ▄cretsiz Destek
E≡er teknik sorular²n²z iτin arad²≡²n²z yan²tlar² bulamazsan²z, Microsoft
Masaⁿstⁿ Uygulamalar² ve Ki■isel ▌■letim Sistemlerinin deste≡ini Microsoft
Destek Hatt² (212 258 96 66) arac²l²≡² ile alabilirsiniz. Tatil gⁿnleri
d²■²nda Pazartesi - Cuma gⁿnleri 9:30 - 17.00 saatleri aras²nda Microsoft
Destek Hatt² mⁿhendisleri taraf²ndan ⁿcretsiz destek hizmeti sa≡lan²r.
Microsoft Tⁿrkiye Destek Hatt²:
Telefon: 90 (212) 258 96 66
Faks: 90 (212) 258 95 99
BBS: 90 (212) 227 93 90
Faks Servisi: 90 (212) 227 93 80 veya (81, 82, 83)
Di≡er Destek Seτenekleri
Yetkili Destek Merkezleri
Microsoft Uygulama Geli■tirme ve Backoffice ⁿrⁿnlerinin deste≡ini Microsoft
Yetkili Destek Merkezleri arac²l²≡² ile ⁿcretli olarak alabilirsiniz.
Microsoft Yetkili Destek Merkezlerinin her biri, de≡i■ik ⁿrⁿn ve/veya ⁿrⁿn
gruplar²nda destek hizmeti vermektedir. TⁿrkiyeÆde hizmet veren Microsoft Yetkili
Destek Merkezleri hakk²nda daha fazla bilgi iτin http://www.microsoft.com/turkey/destek/
sayfalar²na bak²n²z veya Microsoft Tⁿrkiye ofisini aray²n²z.
Microsoft ╟÷zⁿm Ortaklar²
╟÷zⁿm Ortaklar², Microsoft teknolojilerini uygulayarak kullan²c²lara kaliteli
hizmet ve τ÷zⁿmler sa≡lamak amac²yla Microsoft ile i■birli≡i iτinde olan
kurulu■lard²r. Bu firmalar kullan²c²lara, sistem entegrasyonu, dan²■manl²k,
÷zel yaz²l²m geli■tirme, dikey/yatay sekt÷rlere y÷nelik τ÷zⁿmler, anahtar
teslimi proje geli■tirme, e≡itim ve teknik destek gibi τe■itli art²-de≡er
hizmetler sa≡lamaktad²rlar. Daha fazla bilgi iτin http://www.microsoft.com/turkey/
sayfalar²na bak²n²z veya Microsoft Tⁿrkiye ofisini aray²n²z.
Microsoft Kurumsal Teknik Destek
Microsoft Corporation, bⁿyⁿk ve kapsaml² projeler iτin gerek duyulan teknik
deste≡i analiz etmi■ ve bu gereksinimi en iyi ■eklide kar■²layacak Premier
Deste≡i sizlere sunmu■tur. TⁿrkiyeÆde, projelerinize destek vermek ve
hedeflerinizi yakalaman²zda sizlerle beraber τal²■mak ⁿzere Kurumsal Teknik
Destek ekibi hizmetinizdedir. Destekleyen bir yakla■²m ile risklerinizi en
aza indirmek, sorunlar² olu■madan τ÷zebilmek, soru ve sorunlar²n²za en k²sa
zamanda τ÷zⁿm sunabilmek amac² ile Premier Destek paketi sunulmaktad²r. Daha
fazla bilgi iτin Microsoft Tⁿrkiye ofisini aray²n²z.
Microsoft Tⁿrkiye
Telefon: 90 (212) 258 59 98
Faks: 90 (212) 258 59 54
VII. Dosya Listesi
------------------
Bu tablo DCOM95 ile da≡²t²lan sⁿrⁿm numaralar²n²
listeler.
oleaut32.dll 2.30.4275
secur32.dll 4.10.1999
compobj.dll 2.3.2
ole2.dll 2.3.2
ole32.dll 4.71.2900
olecnv32.dll 4.71.2900
olethk32.dll 4.71.2900
rpcltc1.dll 4.71.2900
rpcltc5.dll 4.71.2900
rpcltccm.dll 4.71.2900
rpclts5.dll 4.71.2900
rpcltscm.dll 4.71.2900
rpcns4.dll 4.71.2900
rpcrt4.dll 4.71.2900
rpcss.exe 4.71.2900
storage.dll 2.3.2
stdole2.tlb 2.30.4275
stdole32.tlb 2.1
imagehlp.dll 4.00
dllhost.exe 4.71.2900
comcat.dll 5.0
iprop.dll 4.00
rpcmqcl.dll 4.71.2900
rpcmqsvr.dll 4.71.2900
olepro32.dll 5.0.4275
asycfilt.dll 2.30.4275
dcom2w98.dll 2.10.35.35
Bu tablo DCM95CFG ile da≡²t²lan sⁿrⁿm numaralar²n²
listeler.
dcomcnfg.exe 5.00.1603.0
ciscnfg.exe 4.71.2618